//
//  Extension+UIImage.swift
//  SYWeibo
//
//  Created by Eric on 16/7/28.
//  Copyright © 2016年 Eric. All rights reserved.
//

import UIKit

extension UIImage{
    
    //MARK :  -截屏
  static  func getScreenShot() -> UIImage{
        //得到windows
        let windows = UIApplication.sharedApplication().keyWindow!
        //01 开启图片上下文
        UIGraphicsBeginImageContext(windows.bounds.size)
        //        UIGraphicsBeginImageContext(windows.bounds.size)
        //获取高清截图
        //01 参数:size    02 参数:是否透明   03 参数:倍数[0-1]
        UIGraphicsBeginImageContextWithOptions(windows.bounds.size, false, 0)
        //02 渲染图片上下文
        windows.drawViewHierarchyInRect(windows.bounds, afterScreenUpdates: false)
        //03 从上下文中获取image
        let image = UIGraphicsGetImageFromCurrentImageContext()
        //04 关闭图片上下文
        UIGraphicsEndImageContext()
        return image
        
        
    }
    //开启图片上下文来获取压缩图片
    func getImageScale(width: CGFloat) -> UIImage{
        
        // 压缩图片
        //    /*
        //        指定宽度来压缩
        //       宽 1200    指定宽度  600
        //       高 600              x
        //    */
        //如果当前图片的宽度 小于程序员指定的宽度
        if self.size.width < width {
            return self
        }
        //获取图片的最终高度
        let height = (self.size.width * width) / self.size.width
        //设置 图片的 rect
        let rect = CGRect(x: 0, y: 0, width: width, height: height)
        //01 开启图片上下文
        UIGraphicsBeginImageContext(rect.size)
        //02 渲染图片到上下文
        self.drawInRect(rect)
        //03 从上下文获取image
        let result = UIGraphicsGetImageFromCurrentImageContext()
        // 04 关闭图片上下文
        UIGraphicsEndImageContext()
        
        return result
    }
    
}